home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 November / EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso / earcd / program / misc / tri14dev.lha / Triton / Developer / gcc / source / Makefile next >
Makefile  |  1995-08-25  |  3KB  |  88 lines

  1. #
  2. #  Triton - The object oriented GUI creation system for the Amiga
  3. #  Written by Stefan Zeiger in 1993-1994
  4. #  (c) 1993-1994 by Stefan Zeiger, All rights reserved
  5. #
  6. #  Makefile - Makefile for making the gcc support code
  7. #             (c) 1994 by Gunther Nikl and Stefan Zeiger
  8. #
  9. #  [stz] I created the Triton support files on my system with gcc 2.6.0
  10. #  (from the AmiNet CDROM #4), the gcc 2.3.3 compilers and the 'perl' binary
  11. #  from the gcc 2.5.8 distribution on AmiNet. The version from FreshFish
  12. #  7/94 does not work correctly with conv.p. trConv.p is a modified version
  13. #  of conv.p, which recognizes TritonBase as (struct Library *).
  14. #
  15.  
  16.  
  17. CC    = gcc
  18. RM    = /c/delete quiet
  19. COPY    = /c/copy
  20. PERL    = /sys/shell-tools/perl
  21.  
  22. CVERS    = -V2.3.3
  23. CFLAGS    = -O6 -Ios-include -fno-function-cse $(CPUID) $(COPTS)
  24.  
  25. .SUFFIXES: $(O)
  26.  
  27. # common rule
  28.  
  29. .c$(O):
  30.     @$(CC) $(CVERS) $(CFLAGS) -o $@ -c $<
  31.  
  32. # all object files
  33.  
  34. objs    = tr_openproject$(O) tr_closeproject$(O) tr_firstoccurance$(O) tr_numoccurances$(O) \
  35.       tr_geterrorstring$(O) tr_createapp$(O) tr_deleteapp$(O) tr_getmsg$(O) tr_replymsg$(O) \
  36.       tr_wait$(O) tr_closewindowsafely$(O) tr_getlasterror$(O) tr_lockscreen$(O) tr_unlockscreen$(O) \
  37.       tr_createapptags$(O) tr_openprojecttags$(O) tr_autorequesttags$(O) tr_easyrequesttags$(O) \
  38.       tr_openclose$(O) tr_getattribute$(O) tr_setattribute$(O) \
  39.       tr_lockproject$(O) tr_unlockproject$(O) \
  40.       tr_trlogo$(O)
  41.  
  42. # default target
  43.  
  44. all: os-include/inline/triton.h os-lib/libtriton.a os-lib/blibtriton.a os-lib/libtriton020.a os-lib/blibtriton020.a copylib
  45.  
  46. # several library versions
  47.  
  48. os-lib/libtriton.a:
  49.         @$(MAKE) lib NAME=$@ O=.o 
  50.  
  51. os-lib/blibtriton.a:
  52.         @$(MAKE) lib NAME=$@ O=.bo COPTS=-fbaserel
  53.  
  54. os-lib/libtriton020.a:
  55.         @$(MAKE) lib NAME=$@ O=.o20 CPUID=-m68020
  56.  
  57. os-lib/blibtriton020.a:
  58.         @$(MAKE) lib NAME=$@ O=.bo20 CPUID=-m68020 COPTS=-fbaserel
  59.  
  60. # cleanup 
  61.  
  62. clean:
  63.     @echo "Cleaning up..."
  64.     -@$(RM) \#?.o \#?.bo \#?.o20 \#?.bo20 os-include/inline/triton.h os-lib/\#?
  65.  
  66. # common target to build a special library
  67.  
  68. lib: os-include/inline/triton.h msg $(objs)
  69.         @-$(RM) $(NAME)
  70.         @ar -q $(NAME) $(objs)
  71.         @ranlib $(NAME)
  72.         @echo "done."
  73.  
  74. msg:
  75.         @echo "creating -->" $(NAME) "<-- ..."
  76.  
  77. # install libraries
  78.  
  79. copylib:
  80.     $(COPY) os-lib/\#?.a GNU:os-lib/
  81.  
  82. # inline header file
  83.  
  84. os-include/inline/triton.h: ../triton_lib.fd triton_protos.h trConv.p
  85.     @echo "Creating inline header..."
  86.     $(PERL) trConv.p triton_protos.h ../triton_lib.fd  >  os-include/inline/triton.h
  87.     $(COPY) os-include/inline/triton.h GNU:os-include/inline/
  88.